It is sometimes desired to have faster-than-normal reads and writes in a storage system (e.g., in a solid state drive (SSD)). For example, as random reads take longer than sequential reads, it may be desired to increase the read speed of random reads. To increase read speed, the design of the storage system can be changed to provide more parallelism, but this can comes at the expense of increased volatile memory (e.g., RAM), power, and complexity. Also, for a low-queue-depth read, more parallelism may not be an effective design choice. As another option to improve read speed, memories can be screened for speed during manufacturing to “cherry pick” the fastest memories of a certain storage system. However, this may be at the expense of memory yield and wafer cost. As yet another option, the trim on the memory can be tuned to reduce the read margin. While this can provide a faster read, it can come at the cost of data integrity, as reducing the read margin (e.g., by reading the memory before a preferred read voltage is reached) can increase the bit error rate.
Increasing write speed may also be desired. For example, some storage systems use meta-block and jumbo block designs to operate on multiple memory dies via different channels in parallel to enhance the system's sequential write performance. Other storage systems use large volatile memory to cache data for programming and read the data in response to a host request. Some storage systems provide program speed improvement via a special trim command to enhance memory cell behavior for high-program speed at the memory level.